home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / rjs.lha / RJS / KernelVar / src / KernelVar.h < prev    next >
C/C++ Source or Header  |  1991-06-14  |  910b  |  47 lines

  1. #ifndef RJS_KERNEL_CLASS_H
  2. #define RJS_KERNEL_CLASS_H
  3.  
  4. #include <nlist.h>
  5. #include <sys/param.h>
  6. #include <sys/file.h>
  7. #include <sys/types.h>
  8. #include <sys/socket.h>
  9. #include <sys/time.h>
  10. #include <sys/vmmeter.h>
  11. #include <net/if.h>
  12.  
  13. class RJS_KernelVar {
  14.  
  15. public:
  16.     struct kern_loadav {
  17.         double    la[3];
  18.     };
  19.     struct kern_ifnet {
  20.         char    if_name[IFNAMSIZ];
  21.         short    if_unit;
  22.         short    if_flags;
  23.         int    if_ipackets;
  24.         int    if_ierrors;
  25.         int    if_opackets;
  26.         int    if_oerrors;
  27.         int    if_collisions;
  28.     };
  29.     RJS_KernelVar();
  30.     ~RJS_KernelVar();
  31.     static int pages_to_k(int n);
  32.     loadav(kern_loadav &kla);
  33.     int readk(unsigned long, char *,int);
  34.     int num_ifnet(int &n);
  35.     int get_ifnet(int n, kern_ifnet &kifnet);
  36.     int physmem(int &mem);    // in k-bytes
  37.     int freemem(int &mem);    // in k-bytes
  38.     int boottime(struct timeval &boot);
  39.     int vmstats(struct vmtotal &vt);
  40. private:
  41. // kernel stuff
  42.     static int        init;
  43.     static int        kmem;
  44. };
  45.  
  46. #endif
  47.